package com.pay.plat.service;

import java.util.List;
import java.util.Map;

import com.pay.entity.SysMenus;
import com.pay.entity.SysRole;
import com.pay.entity.SysUser;
import com.pay.utils.ResponseData;

/**
 * 管理员service
 * @author tianpeng
 *
 */
public interface ManagerService {
	
	/**
	 * 取得所有的菜单
	 * @return
	 */
	public List<SysMenus> getMenus() ;
	
	/**
	 * 取得当前登录人的所有权限
	 * @return
	 */
	public Map<String,String> getPermissions(Integer loginId) ;

	/**
	 * 取得所有的管理员用户
	 * @return 
	 */
	public List<SysUser> getUserList(SysUser sysUser);

	/**
	 * 操作管理员添加添加
	 * @param sysUser
	 * @return
	 */
	public ResponseData doUserAdd(SysUser sysUser);

	/**
	 * 删除管理员
	 * @param ids
	 * @return
	 */
	public ResponseData doUserDelete(String ids,Integer loginId);

	/**
	 * 编辑操作
	 * @param sysUser
	 * @return
	 */
	public ResponseData doUserEdit(SysUser sysUser);

	/**
	 * 取得所有的角色信息
	 * @return
	 */
	public List<SysRole> getRoleList();

	/**
	 * 删除角色
	 * @param id
	 * @return
	 */
	public ResponseData doRoleDelete(String ids);

	/**
	 * 取得所有的资源
	 * @return
	 */
	public List<SysMenus> getResource();

	/**
	 * 添加角色
	 * @param sysRole
	 * @return
	 */
	public ResponseData doRoleAdd(SysRole sysRole,String menuids);

	/**
	 * 编辑角色
	 * @param sysRole
	 * @param menuids
	 * @return
	 */
	public ResponseData doRoleEdit(SysRole sysRole, String menuids);

	/**
	 * 取得角色信息
	 * @param id
	 * @return
	 */
	public SysRole getRoleInfo(Integer id);

	/**
	 * 查询全部的资源 并且根据角色id来判断是否有该资源
	 * @param id
	 * @return
	 */
	public List<SysMenus> getResourceByRoleid(Integer id);

	/**
	 * 编辑密码
	 * @param loginId
	 * @param origin
	 * @param newPass
	 * @return
	 */
	public ResponseData doEditPass(Integer loginId, String origin, String newPass);
}
